package com.situ.mall.service;

import com.situ.common.util.PageResult;
import com.situ.mall.pojo.entity.Product;
import com.situ.mall.pojo.query.ProductQuery;
import com.situ.mall.pojo.vo.ProductSalesVO;
import com.situ.mall.pojo.vo.ProductVO;

import java.util.List;

public interface IProductService {

    PageResult list(ProductQuery productQuery);

    void updateStatus(Integer id, Integer status);

    void deleteById(Integer id);

    void deleteAll(Integer[] ids);

    void add(Product product);

    ProductVO selectById(Integer id);

    void update(Product product);

    void updateIsDeleted(Product product);

    Integer countProductByCategoryId(Integer categoryId);

    void onAll(Integer[] ids);

    void offAll(Integer[] ids);

    Integer judge(Integer id);

    List<ProductSalesVO> productSales();

    Integer totalCost();
}
